#pragma once

#include<iostream>
#include<vector>
using namespace std;
template<size_t N >

class bitset
{
public:

	birset()
	{
		_a.resize(N / 32 + 1);
	}

	void set(const size_t x)
	{
		size_t i = x / 32;
		size_t j = x % 32;

		_a[i]|= (i<<j)
	}
	void reset(const size_t x)
	{
		size_t i = x / 32;
		size_t j = x % 32;

		_a[i] &= (~(i << 32));
	}

	bool test(const size_t x)
	{
		size_t i = x / 32;
		size_t j = x % 32;

		return  _a[i] & (1 << j);
	}
private:
	vector<int> _a;
};